package com.sunsy.authserver.beans.po;

import java.util.Date;
import java.io.Serializable;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * (UniformUser)表实体类
 *
 * @author makejava
 * @since 2021-07-20 14:40:38
 */
@Data
@Builder
@TableName(value = "uniform_user")
@NoArgsConstructor
@AllArgsConstructor
public class UniformUser implements Serializable {

    private static final long serialVersionUID = -88084061095822817L;

    /**
     * 用户唯一主键
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 对接第三方系统使用的ID
     */
    private String openId;

    /**
     * 自定义的登陆账号
     */
    private String account;

    /**
     * 用户真实姓名
     */
    private String username;

    /**
     * md5加密的密码
     */
    private String password;

    /**
     * 手机号,可以国家编号
     */
    private String mobile;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 账号有效期-开始时间
     */
    private Date expirationDate;

    /**
     * 账号有效期-结束时间
     */
    private Date expirationEnd;

    /**
     * 账号状态-外部表
     */
    private Integer status;

    /**
     * 所属部门
     */
    private String dept;

    /**
     * 创建人
     */
    @TableField(fill = FieldFill.INSERT)
    private String createdBy;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createdTime;

    /**
     * 更新人
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updatedBy;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.UPDATE)
    private Date updatedTime;

    /**
     * 是否删除-逻辑删除位
     */
    @TableLogic
    private Boolean deleted;

    /**
     * 版本位-乐观锁
     */
    @Version
    private Integer version;


    /**
     * 域账号-只有内部员工有
     */
    private String domainAccount;

}